package com.hundsun.cprs.yyt.gateway.service.trade;

import com.hundsun.cprs.yyt.gateway.request.EntrustDeliveryGoodsRequest;
import com.hundsun.cprs.yyt.gateway.request.EntrustReturnGoodsRequest;
import com.hundsun.cprs.yyt.gateway.request.TradeEntrustQueryRequest;
import com.hundsun.cprs.yyt.gateway.response.BaseResponse;
import com.hundsun.cprs.yyt.gateway.response.TradeEntrustListResponse;
import com.hundsun.cprs.yyt.gateway.response.TradeEntrustResponse;
import com.hundsun.jresplus.remoting.impl.annotation.Service;
import com.hundsun.jresplus.remoting.impl.annotation.ServiceModule;
import com.hundsun.jresplus.remoting.impl.annotation.ServiceParam;

/**
 * 委售模块相关T2对外接口
 * @author linrl
 * @date 2019年2月20日
 */
@ServiceModule
public interface EntrustCommonService {
    
    /**
     * 查询挂售列表
     * @param request
     * @return
     */
    @Service(functionId="319376",desc="查询挂售列表")
    TradeEntrustListResponse selectTradeEntrustList(TradeEntrustQueryRequest request);
    
    /**
     * 查询挂售单详情
     * @param entrustId
     * @return
     */
    @Service(functionId="319377",desc="查询挂售单详情")
    TradeEntrustResponse getTradeEntrust(@ServiceParam("entrust_id") Long entrustId);
    
    /**
     * 挂售单重新上报
     * @param entrustId
     * @return
     */
    /*@Service(functionId="319378",desc="重新上报委售单")
    BaseResponse reEntrust(@ServiceParam("user_id") Long userId,@ServiceParam("entrust_id") Long entrustId);
    */
    /**
     * 挂售单申请发货(未成,部成)
     * @param request
     * @return
     */
    @Service(functionId="319379",desc="挂售单申请发货")
    BaseResponse applyDeliveryGoods(EntrustDeliveryGoodsRequest request);
    
    /**
     * 挂售单申请退货(未成,部成)
     * @param request
     * @return
     */
    @Service(functionId="319380",desc="挂售单申请退货")
    BaseResponse applyReturnGoods(EntrustReturnGoodsRequest request);
}
